<?php

namespace Trois\MainServerRegister\Registers;

use EasySwoole\Component\Singleton;
use EasySwoole\EasySwoole\Config;
use EasySwoole\EasySwoole\ServerManager;
use EasySwoole\EasySwoole\Swoole\EventRegister;
use EasySwoole\Template\Render;
use Trois\Design\Observer\IObserver;

class TplRegister extends BaseRegister implements IObserver
{

    use Singleton;

    private function __construct(EventRegister $register)
    {
        parent::__construct($register);
    }

    public function update()
    {
        $renderConfig = Render::getInstance()->getConfig();

//        /*
//         * 可选配置
//        $renderConfig->setTempDir(getcwd()); // 设置 渲染引擎驱动 Socket 存放目录，默认为 getcwd()
//        $renderConfig->setTimeout(3); // 设置 超时时间，默认为 3s，不建议修改
//        $renderConfig->setServerName('EasySwoole'); // 设置 渲染引擎驱动服务名称，不建议修改
//        $renderConfig->setWorkerNum(3); // 设置 渲染引擎服务工作进程数，默认为 3，不建议修改
//         */

        $renderConfig->setTempDir(Config::getInstance()->getConf('TEMP_DIR'));

        Render::getInstance()->getConfig()->setRender(new TpTemplateDriver());
        Render::getInstance()->attachServer(ServerManager::getInstance()->getSwooleServer());
    }

}


